package cn.xiaopengstack.domain.rebate.model.aggregate;

import cn.xiaopengstack.domain.rebate.event.SendBehaviorRebateEvent;
import cn.xiaopengstack.domain.rebate.model.entity.BehaviorRebateOrderEntity;
import cn.xiaopengstack.domain.rebate.model.entity.DailyBehaviorRebateEntity;
import cn.xiaopengstack.domain.strategy.model.entity.UserEntity;
import cn.xiaopengstack.domain.task.model.TaskEntity;
import lombok.*;

import java.io.Serializable;

/**
 * @author jiangyangang
 */
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class BehaviorRebateAggregate implements Serializable {

    /**
     * 每日用户行为实体
     */
    private DailyBehaviorRebateEntity dailyBehaviorRebateEntity;

    /**
     * 本地事务任务实体
     */
    private TaskEntity taskEntity;

    /**
     * MQ事件
     */
    private SendBehaviorRebateEvent<SendBehaviorRebateEvent.SendBehaviorRebateMessage> event;

    /**
     * 任务订单实体
     */
    private BehaviorRebateOrderEntity orderEntity;
}
